﻿#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

//10.静态全局变量c，不能在此文件中声明，只能作用于源文件中；
//extern static int c;
extern int d;
//static int c = 50;
//int d = 60;
void func02()
{
	//6.静态局部变量a，只定义一次，但可以被多次赋值；故a=30,31,32...39
	static int a = 30;
	printf("4.自定义函数func02中，静态局部变量a自增1,输出a的值：%d\n", a++);//30,31,32...39
	//7.局部变量b，每次都会重新定义，然后值就还是初始值40；故b=40,40,40...40
	int b = 40;
	printf("5.func02中，变量b自增1，输出b的值：%d\n", b++);//40,40,40...40
}

//main101：静态全局和局部变量
int main101()
{
	int a1 = 10;
	a1 = 100;
	//1.静态局部变量；
	static int a2 = 20;
	a2 = 200;
	printf("2.输出局部变量a1被再次赋值后，a1=%d\n", a1);//100
	printf("3.输出静态局部变量a2被再次赋值后，a2=%d\n", a2);//200
	for (int i = 0; i < 10; i++)
	{
		func02();
	}

	//c = 300;
	//printf("8.静态全局变量c被再次赋值后，c=%d\n", c);//300
	d = 400;
	printf("9.输出全局变量d被再次赋值后，d=%d\n", d);//400

	system("pause");
	return EXIT_SUCCESS;
}